#ifndef BASESCENE_H
#define BASESCENE_H

#include <QGraphicsScene>
#include "GlobalDef.h"
class MGraphView;

class BaseScene : public QGraphicsScene
{
    Q_OBJECT
public:
    explicit BaseScene(QObject *parent = 0);
    virtual ~BaseScene();
    virtual bool Init(MGraphView *parentView,BaseScene* parentScene=NULL)=0;

    SceneType getSceneType() const;
    void setSceneType(SceneType sceneType);
    MGraphView *getParentView()const;
    void setParentView(MGraphView *parentView);
    BaseScene* getParentScene()const;
    void setParentScene(BaseScene* parentScene);

protected:
    virtual void mousePressEvent(QGraphicsSceneMouseEvent *event);

protected:
    SceneType  m_sceneType;
    MGraphView *m_parentView;
    BaseScene* m_parentScene;

};
#endif // BASESCENE_H
